package javase2.day05.demo02;

//import jdk.nashorn.internal.runtime.ECMAException;

import java.lang.reflect.Array;

/*
子父类异常：
    如果父类抛出多个异常，子类复写父类方法时，抛出父类相同的异常类或者异常类的子类或者不抛出
    父类方法没有抛出异常，子类也不可以抛出异常。子类产生该异常，只能捕获处理，不能声明抛出
 */
public class Fu {
    public void show1() throws NullPointerException,ClassCastException{}
    public void show2() throws IndexOutOfBoundsException{}
    public void show3() throws IndexOutOfBoundsException{}
    public void show4() {}
}

class Zi extends Fu{
    //抛出父类相同的异常类
    public void show1() throws NullPointerException,ClassCastException{}
    //异常类的子类
    public void show2() throws ArrayIndexOutOfBoundsException{}
    //不抛出
    public void show3() {}
    //子类也不可以抛出异常。子类产生该异常，只能捕获处理，不能声明抛出
    public void show4() {
        try {
            throw new Exception("编译期异常");
        }catch (Exception e){
            System.out.println(e);;
        }
    }



}
